//package cn.edu.sicnu.lgy.finalwork.info_user
//
//import android.Manifest
//import android.app.DatePickerDialog
//import android.content.ContentValues
//import android.content.Intent
//import android.content.pm.PackageManager
//import android.database.sqlite.SQLiteDatabase
//import androidx.appcompat.app.AppCompatActivity
//import android.os.Bundle
//import android.os.Environment
//import android.provider.MediaStore
//import android.system.Os.close
//import android.util.Log
//import android.view.MenuItem
//import android.view.View
//import android.widget.ArrayAdapter
//import android.widget.ImageView
//import android.widget.Spinner
//import android.widget.TextView
//import android.widget.Toast
//import androidx.activity.result.ActivityResultCallback
//import androidx.activity.result.ActivityResultLauncher
//import androidx.activity.result.contract.ActivityResultContract
//import androidx.activity.result.contract.ActivityResultContracts
//import androidx.core.app.ActivityCompat
//import androidx.core.content.ContextCompat
//import cn.edu.sicnu.lgy.finalwork.R
//import cn.edu.sicnu.lgy.finalwork.tab
//import com.google.android.material.internal.ContextUtils
//import de.hdodenhof.circleimageview.CircleImageView
//import java.io.*
//import java.util.*
//
//const val NAME:String="name"
//const val user_table="table"
//var userName:String=""
//var use=Use(1,"","","","南充","","")
//open class Use(var id:Int,var name:String?,var gender:String?,var birthday:String?,var region:String?,var university:String?,var introductory:String? ){}
//class user_info : AppCompatActivity(), View.OnClickListener {
//    val str= arrayOf("男","女")
//
//    lateinit var mlauncher:ActivityResultLauncher<Intent>
//    val personId=1
//
//    private var name: TextView? = null
//    private var intro: TextView? = null
//    private var university: TextView? = null
//    private var born: TextView? = null
//    private var spinner_gender: Spinner? = null
//    private var imagePhoto: ImageView? = null
//    private var save_info: TextView? = null
//    private var photo: CircleImageView? = null
//
//    companion object {
//        lateinit var userr:User
////        lateinit var db: SQLiteDatabase
//    }
//
//    override fun onCreate(savedInstanceState: Bundle?) {
//        super.onCreate(savedInstanceState)
//        setContentView(R.layout.activity_user_info)
//        userr= User(this, dbName,1)
//        userr.writableDatabase
//        userr.readableDatabase
//
//        name = findViewById(R.id.name)
//        intro = findViewById(R.id.intro)
//        university = findViewById(R.id.university)
//        born = findViewById(R.id.born)
//        spinner_gender = findViewById(R.id.spinner_gender)
//        imagePhoto = findViewById(R.id.photo)
//        save_info = findViewById(R.id.save_info)
////
//        var ggender=userr.readableDatabase.query(Table, arrayOf("gender"),"id=?", arrayOf(personId.toString()),null,null,null)
//
//
//        val cursor= userr.readableDatabase.query(Table,null,"id=?", arrayOf(personId.toString()),null,null,null)
//        cursor.apply {
//            if(moveToFirst()){
//                name?.text=getString(getColumnIndexOrThrow("name"))
//                intro?.text=getString(getColumnIndexOrThrow("introductory"))
//                university?.text=getString(getColumnIndexOrThrow("university"))
//                born?.text=getString(getColumnIndexOrThrow("birthday"))
//            }
//            close()
//        }
//        use.name=name?.text.toString()
//        use.introductory=intro?.text.toString()
//        use.university=university?.text.toString()
//        spinner_gender?.tag=ggender.toString()
//        val actionBar=supportActionBar
//        if(actionBar!=null){
////            设置ActionBar是否显示返回键
//            actionBar.setDisplayHomeAsUpEnabled(true)
////            导入返回键图片
//            actionBar.setHomeAsUpIndicator(R.drawable.ic_fanhui_2)
////            设置是否显示标题
//            actionBar.setDisplayShowTitleEnabled(true)
//            actionBar.setTitle("编辑我的资料")
//        }
//        name?.setOnClickListener(this)
//        born?.setOnClickListener(this)
//        intro?.setOnClickListener(this)
//        university?.setOnClickListener(this)
//        save_info?.setOnClickListener(this)
//        photo?.setOnClickListener(this)
//
//
////        从相册选择图片后的回调方法   把图片的Uri设置为photo的Uri
//        mlauncher = registerForActivityResult(ActivityResultContracts.StartActivityForResult(),
//            ActivityResultCallback {
//                if(it.resultCode== RESULT_OK){
//                    val intent=it.data
//                    val UriPic=intent?.data
//                    if(UriPic!=null){
//                        photo?.setImageURI(UriPic)
//                    }
//                }
//            })
//
//        use.birthday=born?.text.toString()
//
////        Log.d("in","--------------------------------------------------------------")
////        Log.d("intro",use.gender.toString())
//        Log.d("innnn","--------------------------------------------------------------")
//        Log.d("intro",use.birthday.toString())
//    }
//    override fun onOptionsItemSelected(item: MenuItem): Boolean {
//        when(item.itemId){
//            android.R.id.home ->
//            {
//                userr.close()
//                finish()
//            }
//
//        }
//        return super.onOptionsItemSelected(item)
//    }
//
//    override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
//        super.onActivityResult(requestCode, resultCode, data)
//        if(requestCode==1){
//            if(resultCode==1){
//                val u=data?.getStringExtra(NAME)
//                name?.text=u.toString()
//                use.name=u.toString()
//            }
//            if(resultCode==2){
//                val u=data?.getStringExtra("university")
//                university?.text=u.toString()
//                use.university=u.toString()
//            }
//            if(resultCode==3){
//                val u=data?.getStringExtra("intro")
//                intro?.text=u.toString()
//                use.introductory=u.toString()
//            }
//
//        }
//        if(requestCode==100){
//            try {
//            } catch (e: FileNotFoundException) {
//                e.printStackTrace()
//            }
//
//        }
//    }
//
//    override fun onClick(p0: View?) {
//        when(p0?.id){
//            R.id.name -> {
//                val intent= Intent(this,rectify_name::class.java)
//                startActivityForResult(intent,1)
//            }
//            R.id.born -> {
//                showDatePickerDialog(this, born!!)
//            }
//            R.id.university -> {
//                val intent= Intent(this,university_activity::class.java)
//                startActivityForResult(intent,1)
//            }
//            R.id.intro -> {
//                val intent= Intent(this,rectify_intro::class.java)
//                startActivityForResult(intent,1)
//            }
//            R.id.photo-> {
//                if (ContextCompat.checkSelfPermission(this, Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
//                    ActivityCompat.requestPermissions(this, arrayOf(Manifest.permission.READ_EXTERNAL_STORAGE), 1);
//                } else {
//                    //访问相册
//                    val intent=Intent(Intent.ACTION_GET_CONTENT)
//                    intent.setType("image/*")
//                    mlauncher.launch(intent)
//
//                }
//            }
//            R.id.spinner_gender -> {
//                var i=0
//                var adapter= ArrayAdapter<String>(this, androidx.appcompat.R.layout.support_simple_spinner_dropdown_item,str)
//                spinner_gender?.adapter=adapter
//                for(i in 0..1){
//                    if(str.get(i)==spinner_gender?.selectedItem.toString()){
//                        use.gender=str.get(i)
//                        break
//                    }
//                }
//
//            }
//
////            点击保存按钮后更新数据库的语句，只有一句
//            R.id.save_info -> {
//                var cur=userr.readableDatabase.query(Table, null,"id=?", arrayOf(personId.toString()),null,null,null)
//                var names=cur.getColumnIndexOrThrow("name")
//                var birthday=cur.getColumnIndexOrThrow("birthday")
//                var universitys=cur.getColumnIndexOrThrow("university")
//                var introductory=cur.getColumnIndexOrThrow("introductory")
//                if(use.name==""){
//                    use.name=names.toString()
//                }
//                if(use.birthday==""){
//                    use.birthday=birthday.toString()
//                }
//                if(use.introductory==""){
//                    use.introductory=introductory.toString()
//                }
//                if(use.university==""){
//                    use.university=universitys.toString()
//                }
//                var value= ContentValues().apply {
//                    put("id", use.id)
//                    put("name",use.name)
//                    put("gender",use.gender)
//                    put("birthday",use.birthday)
////                    put("region",use.region)
//                    put("university",use.university)
//                    put("introductory",use.introductory)
//                }
//                userName=use.name.toString()
//                Log.d("--", "====================================")
//                Log.d(
//                    "--",
//                    name?.text.toString() + " " + born?.text.toString() + " " + university?.text.toString() + " " + intro?.text.toString()
//                )
//                val intent=Intent()
//                val bud=Bundle()
//                bud.putString("intro",use.introductory)
//                bud.putString("name",use.name)
//                intent.putExtra("bun",bud)
//                setResult(1,intent)
//                var pesIdCursor=userr.readableDatabase.query(Table, arrayOf("id"),"id=?", arrayOf(personId.toString()),null,null,null)
//
//                var i=pesIdCursor.getColumnIndexOrThrow("id")
//                if(i!=null){
//                    userr.writableDatabase.update(Table,value,"id=?", arrayOf(personId.toString()))
//                }else{
//                    userr.writableDatabase.insert(Table,null,value)
//                }
//
//            }
//
//            R.id.profile_picture -> {
//                if (ContextCompat.checkSelfPermission(this, Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
//                    ActivityCompat.requestPermissions(this, arrayOf(Manifest.permission.READ_EXTERNAL_STORAGE), 1);
//                } else {
//                    //访问相册
//                    InputPicture()
//                }
//            }
//
//
//        }
//    }
//
//    override fun onRequestPermissionsResult(
//        requestCode: Int,
//        permissions: Array<out String>,
//        grantResults: IntArray
//    ) {
//        super.onRequestPermissionsResult(requestCode, permissions, grantResults)
//        if (requestCode == 1) {
//            if (grantResults.size > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
//                InputPicture()
//            } else {
//                Toast.makeText(this, "你拒绝打开此权限，无法更换头像！", Toast.LENGTH_SHORT).show()
//            }
//        }
//    }
//
//    //    打开照片文件
//    private fun InputPicture() {
//        //Intent.ACTION_PICK 从数据中选择一个项目 (item)，将被选中的项目返回。
//        //MediaStore.Images.Media.EXTERNAL_CONTENT_URI 获取外部的URI
//        val intent = Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI)
//        //参数一:对应的数据的URI 参数二:使用该函数表示要查找文件的MIME类型
//        intent.setDataAndType(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, "image/*")
//        startActivityForResult(intent, 100);
//    }
//
//
//
//    override fun onStop() {
//        super.onStop()
//        //保存序列后的对象到文件中
//
////        关闭数据库连接
//    }
//
//
//    override fun onDestroy() {
//        super.onDestroy()
////        saveData()
//    }
//
//    //显示 日期选择器
//    private var calendar = Calendar.getInstance(Locale.CHINA)
//    private  val themeResId = 3//0是日历图1是滚轴
//    /**
//     * 日期选择
//     * @param activity
//     * @param born
//     */
//    fun showDatePickerDialog(
//        activity: user_info,
//        born: TextView
//    ) {
//        calendar = Calendar.getInstance(Locale.CHINA)
//        // 直接创建一个DatePickerDialog对话框实例，并将它显示出来
//        DatePickerDialog(
//            activity, themeResId,
//            DatePickerDialog.OnDateSetListener { _, year, monthOfYear, dayOfMonth ->
//                // 绑定监听器(How the parent is notified that the date is set.)
//                // 此处得到选择的时间，可以进行你想要的操作
//                born.text = "$year"+"年"+"${monthOfYear+1}"+"月"+"$dayOfMonth"+"日"
//                use.birthday="$year"+"年"+"${monthOfYear + 1}"+"月"+"$dayOfMonth"+"日"
//
//            } // 设置初始日期
//            , calendar.get(Calendar.YEAR)
//            , calendar.get(Calendar.MONTH)
//            , calendar.get(Calendar.DAY_OF_MONTH)).show()
//    }
//
//}
